passthrough: Fix PCI hot-plug option parsing
authorKeir Fraser <keir.fraser@citrix.com>
Wed, 13 May 2009 09:28:35 +0000 (10:28 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Wed, 13 May 2009 09:28:35 +0000 (10:28 +0100)
commit9f97da694dcdfeecf50221e7b1d3b7cdd01ab1ca
tree281d81e7500bfc2beadffba2c04b6475e06ac137
parent1930ad84e4ada52b1e7c6b1376840ddbd0371bb8
passthrough: Fix PCI hot-plug option parsing

When a PCI function is passed-through extra options may be passed
through.
In the case of boot-time PCI pass-through the documented format is:
    [dom:]bus:dev.slot[@vslot][[,opt]...]
    e.g.
    00:01.00.1@7,msitranslate=3D1

In the case of PCI hot-plug the xm pci-attach command take the
following arguments:
    [-o opt[,opt]...] [dom:]bus:dev.slot [vslot]
    e.g.
    -o msitranslate=3D1 00:01.00.1 7

    These xm ends up passing these to xem-qemu as:
    [dom:]bus:dev.slot[[,opt]...][@vslot]
    e.g.
    00:01.00.1,msitranslate=3D1@7

    Note that the option and the vslot have are transposed when
    compared to the format used by boot-time PCI pass-through.

The parser inside qemu-xen can only handle the format used by
boot-time PCI pass-through and because of this ignores
any options passed by hot-plug.

This patch alters format used by hot-plug to match the parser.

Signed-off-by: Simon Horman <horms@verge.net.au>
tools/python/xen/xend/XendDomainInfo.py